IDE/记录VS2015&WinSDK安装过程中增删的系统组件和环境变量 |
您所在的位置:网站首页 › vscode qt环境搭建 › IDE/记录VS2015&WinSDK安装过程中增删的系统组件和环境变量 |
文章目录
概述看看"干净OS环境"安装VS软件后系统目录变化环境变量变化新增的组件程序
Qt及其VS插件安装后安装WinSDK后安装Win10SDK前安装WinSDK后
卸载VS2015其他软件的影响
概述
本文旨在,通过记录干净OS环境下 VS2015、Qt、WinSDK 软件安装前后,对系统环境变量、系统目录、系统安装程序和组件列表等带来了哪些变化,结合曾经在 “不干净的OS下” 安装或使用VS时的失败经验,分析在 “不干净的OS” 下,VS2015安装或使用异常的原因。主要围绕着VS2015或WinSDK的安装和卸载前后,在操作系统下增加和删除了哪些组件、如何修改了环境变量等问题展开。 近半年撞上两次 VS2015安装问题,耗费了不少时间。不很清晰地推测了这些奇怪问题背后的原因:其中一次可能是,PC安装过VS2019,卸载后再尝试安装 VS2015 ;另一次可能是,新入职用了一台别人的电脑,此电脑可能装载过VS或微软的其他产品,后来又卸载过,导致系统注册表、环境变量、系统目录等不是那么干净。 一切似乎都指向 “安装软件的OS环境” 被污染啦,而又 “很难” 清理干净。前几日干脆重装了系统,本文观察记录了下安装VS相关产品前后,关于系统目录、环境变量、控制面板程序列表等方面的变化,以便再出现开发环境安装问题时能有个参考。 看看"干净OS环境"2022年6月9号,重装了操作系统,系统版本Win10-1909,非系统盘格式化。 重装使用的操作系统版本重装后控制面板/程序和功能列表![]() ![]() 如上,在VS安装前,OS已经安装了大量的微软组件,它们大多应该是不同VS版本的运行时库。我们插进来看看安装VS后,使用相同按名称排序时,系统内的相关组件安装情况: 系统新重装后,初始的系统环境变量(PATH): 系统重装后,初始的系统盘目录情况(Windows开头的): 本节不具体关注VS安装方法。主要是观察在纯OS下的安装VS后,环境变量、系统目录等情况的变化,以对比先前或未来遇到的相关异常,为其提供有力的分析依据。本次安装后提示: 上图中提示 Microsoft Visual C++ 2015 Redistributable (x64/x86)已安装这个产品的另一个版本;结合下图中的 Microsoft Visual C++ 2015-2019 Redistributable (x64/x86)(是在OS安装后,VS安装前就有了);那么此现象就不足为奇啦。 “已安装这个产品的另一个版本”,是常见现象,尤其是在高版本的OS下,安装相对低版本的VS软件时。另外,OS的Update过程,也会持续更新相关产品的版本,如: Redistributable 含义为 “可再发行的”。控制面板-卸载或更改程序窗口中,所有的 Redistributable*相关的产品,它们应该是些运行时组件,是在未安装 Visual Studio xxxx 的计算机上运行使用 Visual Studio 开发的应用程序所必需的(这些组件是可以单独下载package进行安装的-当然现在安装OS时基本都带全了)。 系统目录变化
安装Qt软件、VS的Qt插件的安装等请参见 《IDE/在VS2015中集成Qt开发环境》。 Qt软件无外置环境变量 Qt软件安装完成后,PATH环境变量并未发生任何变化。在qmake等运行时,其会设置临时环境变量,请参考其他文章。 本次先安装了VS2015,又安装了Qt5.12,在安装了VS的Qt插件,没有进行过任何的其他配置操作,直接新建Qt Widget 项目,可以编译成功并运行。我们再倒回重装OS前,那时是在 "不干净"的OS下,先装了Qt,再装的 VS 和 Qt 插件,当时新建项目后,直接无法通过编译,不但找不到Qt的lib库,修正后,继续提示找不到 shell32.lib 等问题(当时我安装了Win10的SDK后,此问题才消失。现在回想起来,怀疑原因可能是环境变量中配置了Win10的SDK路径,但是系统盘下却根本没有这个SDK的东西)。 安装WinSDK后好久以前用到SDK包是为了在QtCreator下能使用CDB调试。近期再次安装WinSDK包,是在VS中编译Qt最简单的项目都提示缺失shell32.lib等连接库(结合当前的实际问题,我安装了win10的SDK后,问题还真解决了)。在重装Win10系统,新装VS2015,新装Qt5.12,新装VSQt插件等一系列过程后,并没有再遇到类似问题。 但是我这里还是选择要安装下SDK,不为别的,就是看看它会给系统环境变量、系统盘目录,VS的相关配置项等带来什么变化,以便今后能识别出这种情况导致的IDE异常。最主要的,我就是想看看,在我安装Win10的SDK包后,系统环境变量的PATH中,C:\Program Files (x86)\Windows Kits\8.1\Windows Performance Toolkit 路径会不会自动的被修改成 C:\Program Files (x86)\Windows Kits\10\Windows Performance Toolkit ? 回想之前,若环境变量设置的是C:\Program Files (x86)\Windows Kits\8.1\Windows Performance Toolkit,但实际上系统盘中压根就没有此目录(可能以前有,但是被卸载或删除了),能不带来问题吗? 安装Win10SDK前注意环境变量下的路径,如下截图中8.1目录下,是VS2015原配的SDK开发库版本。至于目录10下压根没有 Windows Performance Toolkit 目录,我猜此目录仅仅是VS2015为了配合Win10操作系统而生成的一个运行时库,上文中也证实了,在该目录下的确不存在任何的WinSDK开发库文件。分别大略看下其目录结构: 本小节内容是在编写 “安装WinSDK-CDB” 小节时实践总结出来的。本小节的前提是,为QtCreator安装CDB调试器,在安装(多个)WinSDK包时,一开始均仅选择了 Debugging Tools for Windows 安装项,此时并没有在VS具体项目属性 -> 常规 -> 目标平台版本选择项中,发现新装的WinSDK… 其原因可能是没有识别到?是我安装的SDK版本太高? 为了做进一步验证,我又下载并安装了14393版本的SDK(在官网下载页面,它已经没有iso版本,其中的"安装模拟器"是指支持移动设备体验开发和 UX 测试的仿真器版本,这里我们选择点击"安装SDK",下载下一个sdksetup.exe文件,1.12M大小)… 双击运行它后,初始弹出的安装界面与iso版一致,安装过程也与iso版本一致,没有再提示我进行在线下载什么的。安装完成后,也没有想象中的那样,能在everything中再收到新增4个cdb.exe文件。只是,在搜索14393时,可以在如下路径C:\Program Files (x86)\Windows Kits\10\Licenses 找到10.0.14393.0 和 10.0.19041.0 目录)… 为了保证可靠性,我还重启了电脑,新建了VS2015项目,再去查看项目属性,依然没有看到多出来的平台选择项和调试器选择项… 难道是安装路径或系统环境变量的问题? 先看看环境变量: 在环境变量里查看到如下相关路径 C:\Program Files (x86)\Windows Kits\8.1\Windows Performance Toolkit 在C:\Program Files (x86)\Windows Kits\10 文件夹下,确实没有Windows Performance Toolkit 为此我们将尝试安装 Debugging Tools for Windows 外的组件 我们在返回到WinSDK的安装界面(之前我们仅选择了Debugging Tools For Windows 一个选项)… 注意,通过VS2015的开发工具(包括调试器、编译器等)去调用Win10的SDK开发包,是否合适?难道不是VS2015原配的8.1版本,不是更加合适吗?而且作为程序的发布者,能使用低版本便不去追寻更高版本,应该是明智的。 卸载VS2015在准确安装VS2017的时候,我执行了对VS2015的卸载。卸载前,我对系统内发布者是MicroSoft 的所有程序和组件列表进行了快照,通过对比卸载后的列表,可以发现只有红色框标记的部分被移除了。而VS2015安装时,增加的那两个环境变量依然存在,并没有被移除,这可能是出于对系统的保护吧,因为VS并不确定这个路径只有它自己在用。 由于之前见过有人说,Visio的安装和卸载,可能对VS的开发环境造成一定的影响,如果visio的卸载可能会意外的干掉一些开发依赖的库。因此本次安装visio的时候,特别关注了下。安装完成后,控制面板程序和功能中只是增加了 Microsoft Visio Professional 2013这一个程序,并没有其他增加;系统环境变量PATH无变化。可以肯定的是,visio是依赖.NET框架,和VS的运行库的,因为它与其他office软件一样,都是微软的产品,都是可以支持编程的。 另外,之前不止一次的遇到过,在Visio软件开启状态下,QtCreator软件使用异常的情况。具体原因并未搞清楚。 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |